Method for managing crossovers in the tracking of mobile objects, and associated device

ABSTRACT

A method for managing track crossovers and a device for tracking mobile objects that is suitable for implementing the method are provided. The method for managing track crossovers comprises, for each track at a given time, a step Stp 1  of testing in order to determine whether the track in question is ambiguous or not at the given time and, if the track is ambiguous, a step Stp 2  of specific processing of the estimate of the track.

The present invention relates to the field of the tracking of mobile objects. The present invention more particularly relates to a method for managing crossovers in the tracking of mobile objects and to a device suitable for implementing such a method. The method and the device may in particular be applied to track ships and aircraft.

Tracking a set of mobile objects with one or more sensors consists in exploiting over time the data output by the group of at least one sensor to construct and update a set of tracks corresponding to the various objects perceived by the one or more sensors. It is a question of grouping as time passes the measurements made for the various tracked objects so as to obtain homogeneous groupings, each grouping having to correspond to a different object, and each grouping constituting a track following the same object as time passes. The objects to be tracked and the one or more sensors may be moving.

The data corresponding to the various mobile objects present in the environment monitored by the one or more sensors may for example include information on the position of said objects. Depending on the sensor, the data may be measured values, such as for example an azimuth in the case of an ESM (electronic support measure) sensor, or measurement vectors such as for example vectors consisting of an azimuth and a distance in the case of a radar sensor, or vectors consisting of an azimuth and an elevation in the case of an optronic sensor. The data vectors may also contain characteristic measurements describing the objects. In certain cases, the position information may consist of a dated position of the sensor and one or more parameters relating to the location of the object in space relative to the sensor.

One problem, in the field of the tracking of mobile objects, is that of correctly tracking the progress of the various objects over time. When similar objects, i.e. objects that are indiscriminable by the characteristic measurements taken by one or more sensors, move through space it is possible that they cross over in terms of their perception from the carrier of the one or more sensors, i.e. that the measurements of the relative position of the objects with respect to said carrier momentarily coincide. Ambiguities are then spoken of. In this case, it becomes difficult, over a more or less long duration, to know whether the information produced by the one or more sensors corresponds to one object or to another. One problem that arises is that of knowing how to group and track the measurements when some of them become momentarily ambiguous. Under these conditions, during the processing of the data, mixups may occur and one or more measurements may be attributed to incorrect tracks. This may degrade the quality of the tracking of the objects and may lead to incorrect characterizations, discontinuities or track splitting at the moment of the crossover. In this context, it is advantageous to have a solution allowing the processing of the tracking to be improved during these crossover situations.

The tracking of objects or of targets is widely treated in the literature (see for example Yaakov Bar-Shalom, Xiao-Rong Li—“Estimation and Tracking”—Artech House 1993 or Samuel Blackman, Robert Popoli—“Design and Analysis of Modern Tracking Systems”—Artech House 1999). This tracking consists in associating newly produced information with tracks already produced in the past while taking into account the proximity of the measured values and of measurement noise, and in updating the tracks.

The tracking of multiple targets (multiple target tracking or MTT) by a sensor involves processing that consists in creating or updating tracks on the basis of newly acquired data. This is typically done (see in particular Samuel Blackman, Robert Popoli—“Design and Analysis of Modern Tracking Systems”—Artech House 1999) by chaining five functions: processing of new observations, association of the observations with tracks, management of the tracks (initialization, confirmation or deletion), filtering and prediction (to update the tracks and to enable estimation of positions in the near future), and windowing (in order to allow associations in the near future while restricting the possible associations to a volume about the predicted position).

However sometimes a number of tracks may conflict, for example when there is an intersection of the volumes about predicted positions. In nearest neighbor (NN) processing, each track is updated by the closest observation, even if the observation is compatible with a plurality of tracks. In global nearest neighbor (GNN) processing, the association is made while considering all the associations compatible with the windowing, but under the constraint that an observation can be associated only with at most one track.

The kinematic parameters of the tracks are typically updated by Kalman filtering (see Yaakov Bar-Shalom, Xiao-Rong Li—“Estimation and Tracking”—Artech House 1993) or by interacting multiple model (IMM) processing (see Yaakov Bar-Shalom, Xiao-Rong Li—“Multitarget-multisensor tracking: Principles and techniques”—1995 or Samuel Blackman, Robert Popoli—“Design and Analysis of Modern Tracking Systems”—Artech House 1999) if it is desired to use an array of Kalman filters in parallel to make it possible to adapt to a kinematic change. However, S. Blackman notes that GNN association processing associated with Kalman filtering only functions well when the targets are widely spaced (see in particular Samuel Blackman—“Multiple Hypothesis Tracking For Multiple Target Tracking”—IEEE A&E Systems Magazine, January 2004 vol. 19, no. 1, Part 2: tutorials, p 5-18). In situations of conflict between tracks, the covariance matrix of the Kalman filter may be increased, but this may further increase the conflicts.

It is also known in the prior art to use a joint probabilistic data association (JPDA) approach, as for example described in 1995 by Yaakov Bar-Shalom et Xiao-Rong Li in “Multitarget-multisensor tracking: Principles and techniques”. This method consists in updating the tracks with all the observations compatible with the windowing using a sum of the observations weighted by their probability. The drawback of this method is that it tends to make tracks that are closely spaced agglomerate.

Another way of managing cases of conflicts during associations is to use multiple hypothesis tracking (MHT) techniques such as for example introduced by D. B. Reid in “An algorithm for tracking multiple targets”—IEEE Transactions on Automatic Control, vol. 21, no. 1 (February 1976), p 101-104. This type of processing consists, in cases of association ambiguity, in memorizing and maintaining over time all the combinations of possible successions of associations between observations and tracks. In order to attempt to preserve only those tracks that persist over time, a score may be defined for the hypotheses, and only the best hypotheses finally adopted. These hypothesis scores may be defined by a likelihood ratio or by a log likelihood ratio of the likelihood that it be a track to the likelihood that it be a false alarm. This type of processing generates a combinatorial explosion that may be controlled by clustering, rejection or grouping of hypotheses, or by retaining only the k best hypotheses. It will be noted that these approaches use a priori probability hypotheses on the number of objects or false-alarm rates.

One aim of the invention is in particular to correct all or some of the drawbacks of the prior art by providing a solution allowing ambiguities related to crossovers in the tracking of mobile objects based on many measurements generated by one or more sensors to be correctly managed.

To this end, one subject of the invention is a method for managing track crossovers implemented by at least one device for tracking mobile objects comprising a group of at least one sensor, the tracking of mobile objects consisting in estimating a set of tracks corresponding to the various mobile objects perceived by the group of at least one sensor, each track corresponding to a set of successive plots representing the movement of a given mobile object, said method comprising, for each track at a given time, a step Stp1 of testing in order to determine whether the track in question is ambiguous or not at the given time and, if the track is ambiguous, a step Stp2 of specific processing of the estimate of the track.

According to one embodiment the method furthermore comprises a step Stp3 of notification of the state of ambiguity of the track under test at the given time.

According to one embodiment, a track k is said to be unambiguous at the time t_(l) if it respects the relationship:

$\begin{matrix} {{\sum\limits_{\underset{j \neq k}{j = 1}}^{K}{{\hat{q}}_{l - 1}^{j}{g\left( {{\hat{C}}_{l - 1}^{k} + {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)} - {\hat{C}}_{l - 1}^{j} - {{\hat{A}}_{l - 1}^{j}\left( {t_{l} - t_{l - 1}} \right)}} \right)}}} < {ɛ \cdot {\hat{r}}_{l - 1}^{k}}} & \; \end{matrix}$

where: K is the total number of tracks created up to the time t_(l−1),

{circumflex over (q)}_(l−1) ^(j) is the estimate of the proportion of plots classed in track j up to the time t_(l−1),

g(.) is a probability density,

Ĉ_(l−1) ^(j)=Â_(l−1) ^(j)t_(l−1)+{circumflex over (B)}_(l−1) ^(j) is the estimate of the position vector of the track j at the time t_(l−1),

Â_(l−1) ^(j) is the estimate of the velocity of the track j at the time t_(l−1) and {circumflex over (B)}_(l−1) ^(j) the estimate of the position vector of the track j at the time t=0,

{circumflex over (r)}_(l−1) ^(k)={circumflex over (q)}″_(l−1) ^(k)/c where {circumflex over (q)}″_(l−1) ^(k) is the estimate of the proportion of the plots X_(n) classed in a track far removed from the track k and c the integral of the domain of the admissible measurements.

According to one embodiment, a track k is said to be unambiguous at a time t_(l) if for any track j≠k it respects the relationship:

|∥Ĉ _(l−1) ^(k) +Â _(l−1) ^(k)(t _(l) −t _(l−1))−Ĉ _(l−1) ^(j) −Â _(l−1) ^(j)(t _(l) −t _(l−1))∥|>S

where: |∥.∥| represents the norm defined for a vector X=(x_(p)) by

${{X}} = {\sup \left( \frac{x_{p}}{\sigma_{p}} \right)}$

where σ_(p) is the standard deviation for the p_(th) component of X in the density g(X),

S is a predefined threshold.

According to one embodiment, the step of specific processing of the estimates of the tracks in the ambiguous state at a time t_(l) is carried out by a recursive filter defined by:

$\quad\left\{ \begin{matrix} {{\hat{C}}_{l}^{k} = {{\hat{C}}_{l - 1}^{k} + {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)} + {{\hat{\alpha}}_{l - 1}^{k}M_{1}{g^{\prime}\left( {X_{l} - {\hat{C}}_{l - 1}^{k} - {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)}} \right)}}}} \\ {{\hat{A}}_{l}^{k} = {{\hat{A}}_{l - 1}^{k} + {{\hat{\alpha}}_{l - 1}^{k}M_{2}{g^{\prime}\left( {X_{l} - {\hat{C}}_{l - 1}^{k} - {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{1}} \right)}} \right)}}}} \end{matrix} \right.$

where X_(l) is the plot measured at the time t_(l)

-   -   Ĉ_(l) ^(k)=Â_(l) ^(k)t_(l)+{circumflex over (B)}_(l) ^(k) is the         estimate of the track in question at the time t_(l),     -   {circumflex over (α)}_(l−1) ^(k) is a weighting parameter,     -   M₁ and M₂ are matrix gains ensuring the stability of the filter,     -   g′(X) is the gradient of the probability density g(.).

According to one embodiment, the parameter {circumflex over (α)}_(l−1) ^(k) is defined by

${\hat{\alpha}}_{l - 1}^{k} = \frac{{\hat{r}}_{l - 1}^{k}}{{\hat{r}}_{l - 1}^{k} + {\sum\limits_{\underset{j \neq k}{j = 1}}^{K}{{\hat{q}}_{l - 1}^{j}{g\left( {X_{l} - {\hat{C}}_{l - 1}^{j} - {{\hat{A}}_{l - 1}^{j}\left( {t_{l} - t_{l - 1}} \right)}} \right)}}}}$

where {circumflex over (r)}_(l−1) ^(k)={circumflex over (q)}″_(l−1) ^(k)/c.

-   -   {circumflex over (q)}_(l−1) ^(j) is the proportion of the plots         X_(n) classed in the track j at the time t_(l−1),     -   Ĉ_(l−1) ^(j) is the estimate of the track in question,     -   Â_(l−1) ^(j) is the estimate of the velocity of the track in         question.

According to one embodiment, the parameter {circumflex over (α)}_(l−1) ^(k) is equal to 0 when the track is ambiguous and is equal to 1 in the contrary case.

According to one embodiment, if duration for which a track is considered to be ambiguous is longer than a predefined threshold, said track is considered to be unambiguous.

According to one embodiment, the group of at least one sensor is chosen from passive sensors, radar sensors, sonar sensors, optronic sensors or any combination of these sensors.

Another subject of the invention is a device for tracking mobile objects, which device is suitable for implementing the method as described above, comprising a group of at least one sensor, a tracking module that is configured to track over time mobile objects on the basis of plots and to calculate and/or update tracks, a table of the tracks containing the list of the tracks tracked by the device, a module for managing crossovers that is configured to apply a set of processing operations in case of track ambiguity, and a publication module configured to transmit to the exterior data from the table of the tracks.

According to one embodiment, the group of at least one sensor is chosen from passive sensors, radar sensors, sonar sensors, optronic sensors or any combination of these sensors.

Other particularities and advantages of the present invention will become more clearly apparent on reading the following description, which is given by way of nonlimiting illustration, and with reference to the appended drawings, in which:

FIG. 1 illustrates an exemplary 2-track crossover geometry;

FIG. 2 shows possible steps of the method for managing crossovers according to the invention;

FIG. 3 shows an exemplary embodiment of a device for tracking mobile objects according to the invention.

The processing according to the invention may be implemented by a device for tracking mobile objects comprising one or more sensors.

The processing for managing crossovers according to the invention is based on a model characterising a track and the track closest to it from all the tracks. For this processing, it will be assumed that only two tracks cross and that the other tracks do not interact with these two tracks.

Below, the processing for managing crossovers according to the invention will be described for a linear variation in the measurements as a function of time.

When the measurements output by the one or more sensors are not noisy, each track k describes a straight line of equation A^(k).t+B^(k) where t designates the time, A^(k) designates the vector of the rate of change of the measurements of track k, and where B^(k) designates the position vector at the time t=0 of the measurements of track k.

In the presence of noise, for each n, the plot X_(n) at the time t_(n) is a measurement value or a measurement vector that corresponds to one of K tracks in the presence of an additive white noise of probability density g(.) that is assumed known. It is therefore possible to write, if the plots X_(n) are considered to vary linearly as a function of time t_(n):

X _(n) =A ^(f(n)) t _(n) +B ^(f(n)) +W _(n) ; n=1,2, . . . , N   (Equation 1)

where W_(n) corresponds to the white noise (which is independent of n) of probability density g(.) and f(.) is an unknown function of [1,2, . . . , N] in [1, 2, . . . , K] indicating which track k corresponds to the plot X_(n).

The objective is to find a processing operation that allows the coefficients A^(k) and B^(k), the index k representing the track, to be estimated by means of the plots X_(n) without knowing either the function f(.) or k. Such as stated, this problem leads to a combinatorial explosion and cannot be processed in the form of equation 1 because of the many unknowns, in particular the function f(.). It is therefore chosen to simplify this model. To do this, recourse is made to a statistical model taking into account average effects instead of the physical reality expressed by equation 1.

Two tracks defined by A, B and by A′, B′ are considered to be close in the vicinity of the time t_(n) if

∥(A−A′)t+B−B′∥<threshold for t belonging to the vicinity of t _(n)

with

${X}^{2} = {\sum\limits_{p = 1}^{P}\frac{x_{p}^{2}}{\sigma_{p}^{2}}}$

where X=(x₁, x₂, . . . , x_(P)), P is the number of components of X and σ_(p) is the standard deviation of x_(p).

For a track close to a crossover situation in the vicinity of the time t_(n), the plot X_(n) belongs either to the track of interest, or to a track that is close to the track of interest, or to tracks that are further removed. It is proposed to write equation 1, and the time t_(n), in the form:

X _(n)=ε_(n)(At _(n) +B)+ε′_(n)(A′t _(n) +B′)+ε″_(n) U _(n) +W _(n)   (Equation 2)

-   -   where ε_(n), ε′_(n), ε″_(n) are such that only one of these         three coefficients is nonzero with a respective probability of         these three states q, q′, q″ respecting q+q′+q″=1,         -   A et B correspond to the coefficients of the track of             interest,         -   A′ et B′ correspond to the coefficients of a track that is             close to the track of interest,         -   W_(n) corresponds to the noise, which is white, independent             of n and of probability density g(.),         -   U_(n) models the other further-removed tracks in the form of             a sequence of independent random variables that are equally             distributed over the value domain of the measurements in             order to translate the unknown nature of these tracks and to             formulate the fewest possible hypotheses on their value.

It will be noted that the model of equation 2 is more general than that of equation 1, because it also takes into account, by the presence of the term U_(n), false measurements that correspond to no track.

The probability density of the plots X_(n), i.e. the density modeled by equation 2, is given by the following equation:

$\begin{matrix} {{p\left( X_{n} \right)} = {{{qg}\left( {X_{n} - {At}_{n} - B} \right)} + \left\lbrack {\frac{q^{''}}{c} + {q^{\prime}{g\left( {X_{n} - {A^{\prime}t_{n}} - B^{\prime}} \right)}}} \right\rbrack}} & \left( {{Equation}\mspace{14mu} 3} \right) \end{matrix}$

where c is the integral of the domain of the admissible measurements (i.e. of the domain to which the measurements can belong).

$\frac{1}{c}$

is the probability density of U_(n).

Because of the independence of the X_(n), it is possible to write:

$\begin{matrix} {{p\left( {X_{1},X_{2},\ldots \mspace{14mu},X_{N}} \right)} = {\prod\limits_{n = 1}^{N}\left( {{{qg}\left( {X_{n} - {At}_{n} - B} \right)} + {\left( {1 - q} \right){h\left( X_{n} \right)}}} \right)}} & \left( {{Equation}\mspace{14mu} 4} \right) \end{matrix}$

with h(.) defined by:

$\begin{matrix} {{h\left( X_{n} \right)} = {\frac{q^{''}}{c} + {q^{\prime}{g\left( {X_{n} - {A^{\prime}t_{n}} - B^{\prime}} \right)}}}} & \left( {{Equation}\mspace{14mu} 5} \right) \end{matrix}$

In equation 4, the number of parameters of the model of equation 1 has been considerably decreased while nonetheless preserving its “nature”. In reality, equation 1 has been incorporated into a family of models represented by one and the same measure of probability.

In order to estimate the value of the parameters A and B of the tracks, it is proposed to calculate the maximum likelihood estimator of (A, B) from the plots X_(n), with n=1, 2, . . . , N, while assuming q, q′, A′ and B′ to be known. This consists in estimating the parameter θ of a random model characterized by a probability density p(X₁, X₂, . . . , X_(n), θ) by means of:

$\hat{\theta} = {{Arg}\; \underset{\theta}{Max}\; {p\left( {X_{1},X_{2},\ldots \mspace{14mu},X_{N},\theta} \right)}}$

where X₁, X₂, . . . , X_(n) are the plots output by the one or more sensors.

From equations 4 and 5:

${\ln \left( {p\left( {X_{1},X_{2},\ldots \mspace{14mu},X_{N},A,B} \right)} \right)} = {{\sum\limits_{n = 1}^{N}{\ln \left( {1 + {q\; \frac{{g\left( {X_{n} - {At}_{n} - B} \right)} - {h\left( X_{n} \right)}}{h\left( X_{n} \right)}}} \right)}} + {\sum\limits_{n = 1}^{N}{\ln \left( {h\left( X_{n} \right)} \right)}}}$   and ${{Arg}\; \underset{A,B}{Max}\; {\ln \left( {p\left( {X_{1},X_{2},\ldots \mspace{14mu},X_{N},A,B} \right)} \right)}} = {{Arg}\; \underset{A,B}{Max}{\sum\limits_{n = 1}^{N}{\ln \left( {1 + {q\; \frac{{g\left( {X_{n} - {At}_{n} - B} \right)} - {h\left( X_{n} \right)}}{h\left( X_{n} \right)}}} \right)}}}$

are obtained.

It is proposed to optimize the search for the maximum for the most difficult cases, i.e. when only very little of the track of interest can be seen. This is expressed by values of q close to 0.

After a limited development to the 1st order in q it is found that:

$\begin{matrix} {\left( {\hat{A},\hat{B}} \right) = {{Arg}\; {Max}{\sum\limits_{n = 1}^{N}\frac{g\left( {X_{n} - {At}_{n} - B} \right)}{h\left( X_{n} \right)}}}} & \left( {{Equation}\mspace{14mu} 6} \right) \end{matrix}$

Formula (6) must be understood in the following way: all the local maxima of the function to be maximized are sought so as to find the parameters (A^(k), B^(k)) of all the tracks. It will also be noted that the processing operation of equation 6 assumes the parameters A′, B′, q and q′ contained in the expression of h(.) to be known.

Two cases are worth examining:

A first case corresponds to the situation where, whatever the tracks k and j of 1, 2, . . . , K, and t_(n):

$\begin{matrix} {{\underset{t_{n}}{Min}{{{\left( {A^{k} - A^{j}} \right)t_{n}} + \left( {B^{k} - B^{j}} \right)}}^{2}} > {threshold}} & \left( {{Equation}\mspace{14mu} 7} \right) \end{matrix}$

This case corresponds to the situation where no track crossover occurs over the duration of the processing. Then h(X_(n))≈q″/c, which is equal to a constant. The processing operation of equation 6 therefore simplifies to:

$\begin{matrix} {\left( {\hat{A},\hat{B}} \right) = {{Arg}\; \underset{A,B}{Max}{\sum\limits_{n = 1}^{N}{g\left( {X_{n} - {At}_{n} - B} \right)}}}} & \left( {{Equation}\mspace{14mu} 8} \right) \end{matrix}$

In this first case, no knowledge of the parameters of the other tracks or of q and q′ is required by the processing—the tracks are completely decoupled.

A second case corresponds to the situation where the condition of equation 7 is not met. This corresponds to a situation of track crossover. As seen above, it is assumed, at the time at which the crossover occurs, that there are only two tracks that have crossed.

The measurements are divided into subsets or blocks of N measurements numbered l=0, 1, 2, . . . so that the plot of index n becomes a plot indexed l N+p where 0≦p<N.

From equations 5 and 6 it is found that for the block l:

$\begin{matrix} {\left( {{\hat{A}}_{l},{\hat{B}}_{l}} \right) = {{Arg}\mspace{11mu} \underset{A,B}{Max}{\sum\limits_{m = 0}^{l}\; {\sum\limits_{p = 0}^{N - 1}\; \frac{g\left( {X_{{mN} + p} - {At}_{{mN} + p} - B} \right)}{\frac{q^{''}}{c} + {q^{\prime}{g\left( {X_{{mN} + p} - {A^{\prime}t_{{mN} + p}} - B^{\prime}} \right)}}}}}}} & \left( {{Equation}\mspace{14mu} 9} \right) \end{matrix}$

So as to define a processing operation that may be applied to all of the blocks, it is assumed that the estimates of rank l−1 necessary to calculate Â_(l) and {circumflex over (B)}_(l) are known. Therefore, Â_(l−1) ^(k), {circumflex over (B)}_(l−1) ^(k), {circumflex over (q)}_(l−1) ^(k), {circumflex over (q)}_(l−1) ^(mk)/c={circumflex over (r)}_(l−1) ^(k) is known for each track and it is proposed to estimate the A^(k) and B^(k) of rank l, in light of equation 9, by:

$\begin{matrix} {\left( {{\hat{A}}_{l}^{k},{\hat{B}}_{l}^{k}} \right) = {{Arg}\mspace{11mu} \underset{A,B}{Max}{\sum\limits_{m = 0}^{l}\; {\sum\limits_{p = 0}^{N - 1}\; \frac{g\left( {X_{{mN} + p} - {At}_{{mN} + p} - B} \right)}{{\hat{r}}_{l - 1}^{k} + {\sum\limits_{\underset{j \neq k}{j = 1}}^{K}\; {{\hat{q}}_{l - 1}^{j}g\begin{matrix} \left( {X_{{mN} + p} - {{\hat{A}}_{{{({m - 1})}N} + p}^{j}t_{{mN} + p}} -} \right. \\ \left. {\hat{B}}_{{{({m - 1})}N} + p}^{j} \right) \end{matrix}}}}}}}} & \left( {{Equation}\mspace{14mu} 10} \right) \end{matrix}$

-   -   where c {circumflex over (r)}_(l−1) ^(k) is the proportion of         the plots X_(n) not classed in the track k for n=1,2, . . . ,         (l−1)N, (the proportion of tracks that were ambiguous with the         track k prior to the time of calculation is neglected)         -   {circumflex over (q)}_(l−1) ^(j) is the proportion of plots             X_(n) classed in the track j for n=1,2, . . . , (l−1)N.

For the rank l, the value {circumflex over (q)}_(l) ^(k) is updated for the track k with the new proportion of plots assigned to the track k.

On account of the fact that it is being considered that only two tracks cross, it will also be noted that in the summation, in the denominator of equation 10, at most one term is nonzero.

The maximization of equation 10 may be obtained in various ways.

In a first way, the maximization is obtained by calculating the function to be maximized in a grid of values of A and B about the preceding estimate (Â_(l−1) ^(k),{circumflex over (B)}_(l−1) ^(k)).

According to a second method, the maximization is obtained by a gradient algorithm (Newton method) from (Â_(l−1) ^(k),{circumflex over (B)}_(l−1) ^(k)). This method is most often used when the length N of the blocks is equal to 1. In this case the index l and the index n are indistinguishable. C_(l) ^(k)=A^(k)t_(l)+B^(k) is defined, and after the gradient has been taken, the following is found:

$\begin{matrix} \left\{ \begin{matrix} \begin{matrix} {{\hat{C}}_{l}^{k} = {{\hat{C}}_{l - 1}^{k} + {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)} +}} \\ {{\hat{\alpha}}_{l - 1}^{k}M_{1}{g^{\prime}\left( {X_{l} - {\hat{C}}_{l - 1}^{k} - {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)}} \right)}} \end{matrix} \\ {{\hat{A}}_{l}^{k} = {{\hat{A}}_{l - 1}^{k} + {{\hat{\alpha}}_{l - 1}^{k}M_{2}{g^{\prime}\left( {X_{l} - {\hat{C}}_{l - 1}^{k} - {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)}} \right)}}}} \end{matrix} \right. & \left( {{Equation}\mspace{14mu} 11} \right) \end{matrix}$

In this written form:

-   -   g′(X) is the gradient of g(.) with respect to X;     -   M₁ and M₂ are two gains (which are possibly matrices if the         matrix of second derivatives is taken into account in the Newton         method) that ensure the stability of the filter defined by         equation 11 and adjust its bandwidth;         -   and {circumflex over (α)}_(l−1) ^(k) is a weighting             parameter dependent on the state of ambiguity of the track             in question, and which is defined by:

$\begin{matrix} {\mspace{79mu} {{\hat{\alpha}}_{l - 1}^{k} = \frac{{\hat{r}}_{l - 1}^{k}}{{\hat{r}}_{l - 1}^{k} + {\sum\limits_{\underset{j \neq k}{j = 1}}^{K}\; {{\hat{q}}_{l - 1}^{j}{g\left( {X_{l} - {\hat{C}}_{l - 1}^{j} - {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)}} \right)}}}}}} & \left( {{Equation}\mspace{14mu} 12} \right) \end{matrix}$

The influence of this weighting parameter {circumflex over (α)}_(l−1) ^(k) may be understood as follows. When there are no track crossovers at the time t_(l),

${{\sum\limits_{\underset{j \neq k}{j = 1}}^{K}\; {{\hat{q}}_{l - 1}^{j}{g\left( {X_{l} - {\hat{C}}_{l - 1}^{j} - {{\hat{A}}_{l - 1}^{j}\left( {t_{l} - t_{l - 1}} \right)}} \right)}}} = 0},$

and {circumflex over (α)}_(l−1) ^(k)=1. The filter of equation 11 then behaves just like the conventional filters employed in multi-object tracking. A copy of the dynamic variation of the tracks is obtained and the delta (difference between the plot and the estimate of the plot) is passed through a gate. In this case, the filter of equation 11 corresponds to the gradient algorithm for processing equation 8, and the method proposed here allows the type of gate that must be employed to be specified.

In case of track crossover, the parameter {circumflex over (α)}_(l−1) ^(k) becomes strictly lower than 1 and decreases until the time of crossover. This parameter then increases to 1. As the value of this parameter decreases, the filter takes the plot X less and less into account at the various times. This may be interpreted as a gradual switchover to “memory” mode, that, for its part, is characterized by {circumflex over (α)}_(l−1) ^(k)=0. This “memorization” is then gradually abandoned as the tracks separate from each other.

FIG. 1 shows, via a graph, the geometry of one exemplary crossover of two tracks 11.

In this graph the successive positions 10 of plots forming two tracks 11 that cross at a point of intersection 15 are shown. Each plot corresponds to a measurement vector X delivered by one or more sensors. The successive plots of a track characterize the movement of the tracked mobile object.

On approaching the point of intersection 15, the tracks 11 enter into an area of ambiguity 12. This area 12 corresponds to the period for which the tracks are close, and in which it becomes difficult to know to which track the plots 10 belong.

FIG. 2 shows possible steps of the method for managing crossovers in the tracking of mobile objects according to the invention. This method may comprise for each track at each time t_(n), a step Stp1 of testing the state of ambiguity of the track in question in order to determine whether the track in question is ambiguous or not at the given time and, if the track is ambiguous, a step Stp2 of specific processing of the estimate of the track taking into account the ambiguity of the track under test at the given time t_(n).

The method may also comprise a step Stp3 of notification of the state of ambiguity of the track under test at the given time t_(n).

The step Stp1 of detecting states of track ambiguity consists, for each track at the time t_(l), in verifying whether this track is in a state of ambiguity or not. To do this a track separation criterion is defined.

According to one embodiment, the track k is said to be unambiguous at the time t_(l) if the following test is passed:

$\begin{matrix} {{\sum\limits_{\underset{j \neq k}{j = 1}}^{K}\; {{\hat{q}}_{l - 1}^{j}{g\left( {{\hat{C}}_{l - 1}^{k} + {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)} - {\hat{C}}_{l - 1}^{j} - {{\hat{A}}_{l - 1}^{j}\left( {t_{l} - t_{l - 1}} \right)}} \right)}}} < {ɛ\mspace{11mu} {\hat{r}}_{l - 1}^{k}}} & \left( {{Equation}\mspace{14mu} 13} \right) \end{matrix}$

-   -   where K is the total number of tracks created up to the time         l−1,     -   Ĉ_(l) ^(j)=Â_(l) ^(j)t_(l)+{circumflex over (B)}_(l) ^(j) is the         estimate of the position vector of the track j at the time         t_(l),     -   Â_(l) ^(j) the estimate of the velocity vector of the track j at         the time t_(l) and {circumflex over (B)}_(l) ^(j) the estimate         of the position vector of the track j at the time t=0.     -   {circumflex over (q)}_(l−1) ^(j) is the estimate of the         proportion of the plots X_(n) classed in the track j for n=1,2,         . . . , (l−1)N,     -   g(.) is the probability density of the measurement noise,     -   ε is a coefficient. In one embodiment this coefficient is 0.1,     -   {circumflex over (r)}_(l−1) ^(k)={circumflex over (q)}″_(l−1)         ^(k)/c where {circumflex over (q)}″_(l−1) ^(k) is the estimate         of the proportion of the plots X_(n) classed in a track far         removed from the track k and c the integral of the domain of the         admissible measurements.

When the track k fails the test, the track k is said to be ambiguous at the time t_(l).

In this step, an indicator may be updated for the track in question to indicate that, at the given time, the track is in an ambiguous or unambiguous state.

The ambiguity detection is carried out at each time t_(n), the time interval between two times t_(n) possibly being regular or not.

According to another embodiment, a track k is said to be unambiguous at the time t_(l) if for any track j≠k:

|∥Ĉ _(l−1) ^(k) +Â _(l−1) ^(k)(t _(l) −t _(l−1))−Ĉ _(l−1) ^(j) −Â _(l−1) ^(j)(t _(l) −t _(l−1))∥|>S

-   -   where |∥.∥| the norm defined for a vector X=(x_(p)) by

${{X}} = {\sup \left( \frac{x_{p}}{\sigma_{p}} \right)}$

where σ_(p) is the standard deviation for the p^(th) component of X in the density g(X),

-   -   -   S is a predefined threshold.

When a track is in a state of ambiguity, a processing operation specific to the management of crossovers is added to the tracking processing. This specific processing operation consists of a recursive processing operation or recursive filter applied using equation 11, which was presented above.

According to a first embodiment of the method according to the invention, the step Stp2 of specific processing of the data relating to the tracks in a state of ambiguity consists of switching to memory mode, i.e. new measurements are not taken into account when updating a track during the period in which this track is in an area of ambiguity. This amounts to saying that the parameters of the position-predicting calculation no longer vary during the state of ambiguity. In other words, this amounts to setting the parameter {circumflex over (α)}_(l−1) ^(k) of equation 11 to zero when the track is ambiguous in order to no longer take into account the measurements. When the track is not ambiguous, the value of this parameter is set to 1.

According to another embodiment, gradual switchover to “memory” mode is performed in order to achieve a less abrupt transition with respect to the preceding method. This softer transition is achieved by calculating the parameter {circumflex over (α)}_(l−1) ^(k) using equation 12, which was seen above. When the track enters the area of ambiguity, the value of the parameter {circumflex over (α)}_(l−1) ^(k) begins to gradually decrease and the plots are taken into account less and less. Likewise, as the tracked object gets further from the point of intersection of the two tracks, the value of the parameter {circumflex over (α)}_(l−1) ^(k) will gradually increase to a value substantially equal to 1.

Switching to “memory” mode makes it possible to ensure that the tracks are not deviated by errors due to mixup of the plots between the two tracks at the moment of the crossover.

Advantageously, the implementation of the first method is much less expensive in computational terms.

The state of ambiguity is temporary: it starts, lasts and ends depending on the variation in the measurements measured for the tracked mobile objects over time. According to one embodiment of the method, when the duration for which a track is considered to be ambiguous exceeds a predefined threshold, this track is considered to be unambiguous in order to prevent it from remaining in a state of ambiguity for too long.

The two processing variants described above assume a linear variation in the measurements as a function of time. This provides flexibility for the tracking of mobile objects. However, in certain cases it may be necessary to take into account an order higher than the second order in order to be able to better track the movements of these objects—for example, the acceleration of relative movements could be taken into account.

The processing operations may be generalized, for example, to the third order for plot variations that are locally not entirely linear, and for any order higher than or equal to 2.

Keeping the above notations, equation 1 becomes:

X _(n) =D ^(f(n)) t _(n) ² +A ^(f(n)) t _(n) +B ^(f(n)) +W _(n) ; n=1,2, . . . , N   (Equation 14)

where the parameter D makes it possible to introduce an acceleration term that is a function of time.

Equation 9 becomes:

$\begin{matrix} {\left( {{\hat{A}}_{l},{\hat{B}}_{l},{\hat{D}}_{l}} \right) = {{Arg}\mspace{11mu} \underset{A,B,D}{Max}{\sum\limits_{m = 0}^{l}\; {\sum\limits_{p = 0}^{N - 1}\; \frac{g\left( {X_{{mN} + p} - {Dt}_{{mN} + p}^{\; 2} - {At}_{{mN} + p} - B} \right)}{\frac{q^{''}}{c} + {q^{\prime}{g\left( {X_{{mN} + p} - {D^{\prime}t_{{mN} + p}^{\; 2}} - {A^{\prime}t_{{mN} + p}} - B^{\prime}} \right)}}}}}}} & \left( {{Equation}\mspace{14mu} 15} \right) \end{matrix}$

Equation 10 becomes:

$\begin{matrix} {\left( {{\hat{A}}_{l}^{k},{\hat{B}}_{l}^{k},{\hat{D}}_{l}^{k}} \right) = {{Arg}\mspace{11mu} \underset{A,B,D}{Max}{\sum\limits_{m = 0}^{l}\; {\sum\limits_{p = 0}^{N - 1}\; \frac{g\left( {X_{{mN} + p} - {Dt}_{{mN} + p}^{\; 2} - {At}_{{mN} + p} - B} \right)}{{\hat{r}}_{l - 1}^{k} + {\sum\limits_{\underset{j \neq k}{j = 1}}^{K}\; {{\hat{q}}_{l - 1}^{j}g\begin{matrix} \left( {X_{{mN} + p} - {{\hat{D}}_{{{({m - 1})}N} + p}^{j}t_{{mN} + p}^{2}} -} \right. \\ \left. {{\hat{A}}_{{{({m - 1})}N} + p}^{j}t_{{mN} + p}{\hat{B}}_{{{({m - 1})}N} + p}^{j}} \right) \end{matrix}}}}}}}} & \left( {{Equation}\mspace{14mu} 16} \right) \end{matrix}$

The recursive processing of equation 11 may be similarly generalized, as may equations 12 and 13.

In a step Stp3, information on the state of track ambiguity is published with the track. According to one embodiment, each track for example comprises an indicator indicating the state of ambiguity and therefore whether the measurement corresponds to an extrapolation or to an actual measurement. This makes it possible to know at the output whether the track publication is the result of calculations carried out on measurements (case for a track outside of an area of ambiguity) or the result of the memory of the track (case for the track passing through an area of ambiguity). The downstream processing device to which the data are published thus knows, among the transmitted data, which are ambiguous and which are not.

The method for managing crossovers according to the invention may be applied to the tracking of mobile objects such as for example aircraft or ships. It may be implemented by one or more mobile object tracking devices comprising at least one sensor. The one or more sensors may be passive sensors, radar sensors, sonar sensors, optronic sensors or any combinations of these sensors.

Another subject of the invention is a device for tracking mobile objects, said device being able to implement the method for managing crossovers that was described above.

FIG. 3 shows an exemplary embodiment of a device for tracking mobile objects according to the invention.

The device comprises at least one sensor 31 that delivers various measurements corresponding to objects moving in the monitored area. According to one embodiment, the one or more sensors 31 may be electronic support measure (ESM) sensors (capteurs de Mesure de Renseignement Electronique in French), radar sensors, optronic sensors or any combinations of these sensors in the case of a multisensor device.

A tracking module 32 takes each measurement vector X_(n) in order to update the corresponding tracks in a table 33 of the tracks. This module tracks mobile objects over time using a table 33 of the tracks containing information on the tracked objects and using measurement vectors or plots X_(n).

The table 33 of the tracks contains, for each tracked object, actual information and information summarizing the measurement vectors received recently. The table 33 of the tracks thus contains the same type of information as the measurements, i.e. one or more pieces of information on relative position indicating the location of the object in space relative to the sensor and optionally pieces of information describing the tracked objects. The content of the table 33 of the tracks thus varies over time depending on measurements delivered by the one or more sensors 31.

The device according to the invention also comprises a tracking module 32. The aim of this module is firstly to determine to which track, in the table 33, to attribute a measurement vector, and then to update the information of the track using the more recent data contained in the measurement vector. The tracking module 32 may thus create a new track if a measurement vector cannot be associated with an existing track in the table, or possibly delete a track if there have been no updates for this track for a long time.

A module 34 for managing crossovers takes action on the table of the tracks in case of track ambiguity by applying a set of additional processing operations as seen above. This module 34 complements the object tracking processing.

The tracking device comprises a publication module 35 configured to transmit to the exterior information on the tracking of the objects. The published data may correspond to any changes, such as for example one or more new tracks or recent track changes. These data are for example transmitted to another system, to one or more processing stages that are further downstream (such as a display), to another platform in the case where the device is embedded in a multi-platform system, etc.

The various modules described above may be one or more microprocessors, processors, computers or any other suitably programmed equivalent means. 

1. A method for managing track crossovers implemented by at least one device for tracking mobile objects comprising a group of at least one sensor, the tracking of mobile objects consisting in estimating a set of tracks corresponding to the various mobile objects perceived by the group of at least one sensor, each track corresponding to a set of successive plots representing the movement of a given mobile object, said method being comprising, for each track at a given time, a step Stp1 of testing in order to determine whether the track in question is ambiguous or not at the given time, a track k being said to be unambiguous at the time t_(l) if it respects the relationship: ${\sum\limits_{\underset{j \neq k}{j = 1}}^{K}\; {{\hat{q}}_{l - 1}^{j}{g\left( {{\hat{C}}_{l - 1}^{k} + {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)} - {\hat{C}}_{l - 1}^{j} - {{\hat{A}}_{l - 1}^{j}\left( {t_{l} - t_{l - 1}} \right)}} \right)}}} < {ɛ.\; {\hat{r}}_{l - 1}^{k}}$ or if for any track j≠k it respects the relationship: |∥Ĉ _(l−1) ^(k) +Â _(l−1) ^(k)(t _(l) −t _(l−1))−Ĉ _(l−1) ^(j) −Â _(l−1) ^(j)(t _(l) −t _(l−1))∥|>S in which relationships: K is the total number of tracks created up to the time t_(l−1), {circumflex over (q)}_(l−1) ^(j) is the estimate of the proportion of plots classed in track j up to the time t_(l−1), g(.) is a probability density, Ĉ_(l−1) ^(j)=Â_(l−1) ^(j)t_(l−1)+{circumflex over (B)}_(l−1) ^(j) is the estimate of the position vector of the track j at the time t_(l−1), Â_(l−1) ^(j) is the estimate of the velocity of the track j at the time t_(l−1) and {circumflex over (B)}_(l−1) ^(j) the estimate of the position vector of the track j at the time t=0, ε is a coefficient. In one embodiment this coefficient is 0.1, {circumflex over (r)}_(l−1) ^(k)={circumflex over (q)}″_(l−1) ^(k)/c where {circumflex over (q)}″_(l−1) ^(k) is the estimate of the proportion of the plots X_(n) classed in a track far removed from the track k and c the integral of the domain of the admissible measurements |∥.∥| represents the norm defined for a vector X=(x_(p)) by ${{X}} = {\sup \left( \frac{x_{p}}{\sigma_{p}} \right)}$ where σ_(p) is the standard deviation for the p^(th) component of X in the density g(X), S is a predefined threshold, and, if the track is ambiguous, a step Stp2 of specific processing of the estimate of the track.
 2. The method as claimed in claim 1 further comprises a step Stp3 of notification of the state of ambiguity of the track under test at the given time.
 3. The method as claimed in claim 1 wherein the step of specific processing of the estimates of the tracks in the ambiguous state at a time t_(l) is carried out by a recursive filter defined by: $\left\{ \begin{matrix} {{\hat{C}}_{l}^{k} = {{\hat{C}}_{l - 1}^{k} + {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)} + {{\hat{\alpha}}_{l - 1}^{k}M_{1}{g^{\prime}\left( {X_{l} - {\hat{C}}_{l - 1}^{k} - {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)}} \right)}}}} \\ {{\hat{A}}_{l}^{k} = {{\hat{A}}_{l - 1}^{k} + {{\hat{\alpha}}_{l - 1}^{k}M_{2}{g^{\prime}\left( {X_{l} - {\hat{C}}_{l - 1}^{k} - {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)}} \right)}}}} \end{matrix} \right.$ where X_(l) is the plot measured at the time t_(l) Ĉ_(l) ^(k)=Â_(l) ^(k)t_(l)+{circumflex over (B)}_(l) ^(k) is the estimate of the track in question at the time t_(l), {circumflex over (α)}_(l−1) ^(k) is a weighting parameter, M₁ and M₂ are matrix gains ensuring the stability of the filter, g′(X) is the gradient of the probability density g(.).
 4. The method as claimed in claim 3 wherein the parameter {circumflex over (α)}_(l−1) ^(k) is defined by $\mspace{34mu} {{\hat{\alpha}}_{l - 1}^{k} = \frac{{\hat{r}}_{l - 1}^{k}}{{\hat{r}}_{l - 1}^{k} + {\sum\limits_{\underset{j \neq k}{j = 1}}^{K}\; {{\hat{q}}_{l - 1}^{j}{g\left( {X_{l} - {\hat{C}}_{l - 1}^{j} - {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)}} \right)}}}}}$ where {circumflex over (r)}_(l−1) ^(k)={circumflex over (q)}″_(l−1) ^(k)/c. {circumflex over (q)}_(l−1) ^(j) is the proportion of the plots X_(n) classed in the track j at the time t_(l−1), Ĉ_(l−1) ^(j) is the estimate of the track in question, Â_(l−1) ^(j) is the estimate of the velocity of the track in question.
 5. The method as claimed in claim 3 wherein the parameter {circumflex over (α)}_(l−1) ^(k) is equal to 0 when the track is ambiguous and is equal to 1 in the contrary case.
 6. The method as claimed in claim 1 wherein if the duration for which a track is considered to be ambiguous is longer than a predefined threshold, said track is considered to be unambiguous.
 7. The method as claimed in claim 1 wherein the group of at least one sensor is chosen from passive sensors, radar sensors, sonar sensors, optronic sensors or any combination of these sensors.
 8. A device for tracking mobile objects, which device is suitable for implementing the method as claimed in claim 1 comprising a group of at least one sensor, a tracking module that is configured to track over time mobile objects on the basis of plots and to calculate and/or update tracks, a table of the tracks containing the list of the tracks tracked by the device, a module for managing crossovers that is configured to apply a set of processing operations in case of track ambiguity, a track k being said to be unambiguous at the time t_(l) if it respects the relationship: ${\sum\limits_{\underset{j \neq k}{j = 1}}^{K}\; {{\hat{q}}_{l - 1}^{j}{g\left( {{\hat{C}}_{l - 1}^{k} - {{\hat{A}}_{l - 1}^{k}\left( {t_{l} - t_{l - 1}} \right)} - {\hat{C}}_{l - 1}^{j} - {{\hat{A}}_{l - 1}^{j}\left( {t_{l} - t_{l - 1}} \right)}} \right)}}} < {ɛ.\; {\hat{r}}_{l - 1}^{k}}$ or if for any track j≠k it respects the relationship: |∥Ĉ _(l−1) ^(k) +Â _(l−1) ^(k)(t _(l) −t _(l−1))−Ĉ _(l−1) ^(j) −Â _(l−1) ^(j)(t _(l) −t _(l−1))∥|>S in which relationships: K is the total number of tracks created up to the time t_(l−1), {circumflex over (q)}_(l−1) ^(j) is the estimate of the proportion of plots classed in track j up to the time t_(l−1), g(.) is a probability density, Ĉ_(l−1) ^(j)=Â_(l−1) ^(j)t_(l−1)+{circumflex over (B)}_(l−1) ^(j) is the estimate of the position vector of the track j at the time t_(l−1), Â_(l−1) ^(j) is the estimate of the velocity of the track j at the time t_(l−1) and {circumflex over (B)}_(l−1) ^(j) the estimate of the position vector of the track j at the time t=0, ε is a coefficient. In one embodiment this coefficient is 0.1, {circumflex over (r)}_(l−1) ^(k)={circumflex over (q)}″_(l−1) ^(k)/c where {circumflex over (q)}″_(l−1) ^(k) is the estimate of the proportion of the plots X_(n) classed in a track far removed from the track k and c the integral of the domain of the admissible measurements |∥.∥| represents the norm defined for a vector X=(x_(p)) by ${{X}} = {\sup \left( \frac{x_{p}}{\sigma_{p}} \right)}$ where σ_(p) is the standard deviation for the p^(th) component of X in the density g(X), S is a predefined threshold, and a publication module configured to transmit to the exterior data from the table of the tracks.
 9. The device as claimed in claim 8 wherein the group of at least one sensor is chosen from passive sensors, radar sensors, sonar sensors, optronic sensors or any combination of these sensors. 